// pages/MyReport/ReportDetail/ReportDetail.js
const api = require("../../../config/api.js")
Page({

  /**
   * 页面的初始数据
   */
  data: {
    feedbackInfo:{},
    audioContext: null, // 保存 InnerAudioContext 实例
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    // 获取传递参数
    const feedbackCode = options.feedbackCode;
    console.log('传递feedbackCode:', feedbackCode);
    // 创建音频上下文
    const audioContext = wx.createInnerAudioContext();
    this.setData({ audioContext });

    this.getReportDetail(feedbackCode);
  },
  getReportDetail: function (feedbackCode) {
    wx.request({
      url: api.feedbackInfo,
      method: 'POST',
      data: {
        feedbackCode,
      },
      success: (res) => {
        wx.hideLoading()
        if (res.data.code == 200) {
          this.setData({
            feedbackInfo:res.data.data
          })
          console.log('上报详情返回',res.data.data)
          this.splitImageUrlsBy()
          console.log('feedbackInfo',this.data.feedbackInfo)
        } else {
          wx.showToast({
            title: res.data.mesage,
            icon: "none"
          })
        }
      }
    })
  },
  onBack: function () {
    wx.navigateBack({
      delta: 1
    });
  },
  splitImageUrlsBy() {
    console.log('开始切割')
    const {
      feedbackImgFile
    } = this.data.feedbackInfo;
    if (feedbackImgFile) {
      var pic = [];
      if (feedbackImgFile.includes('&&')) {
        // 使用逗号切割字符串
        pic = feedbackImgFile.split('&&');
      } else {
        // 如果没有逗号，则直接将 feedbackImgFile 放入 pic 数组中
        pic = [feedbackImgFile];
      }
      console.log('切割之后的数组', pic);
      this.setData({
        // 把数组内容直接赋值给testingImgFile
        'feedbackInfo.photoList': pic
      });
    }
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  playAudio() {
    const { feedbackInfo, audioContext } = this.data;

    if (!feedbackInfo.feedbackVoiceFile) {
      wx.showToast({
        title: '音频文件不存在',
        icon: 'none',
      });
      return;
    }

    // 设置音频路径
    audioContext.src = feedbackInfo.feedbackVoiceFile;

    // 播放音频
    audioContext.play();

    // 监听播放事件
    audioContext.onPlay(() => {
      console.log('音频播放开始');
    });

    // 监听错误事件
    audioContext.onError((res) => {
      console.error('音频播放错误', res.errMsg, res.errCode);
      wx.showToast({
        title: '音频播放失败',
        icon: 'none',
      });
    });
  },

  stopAudio() {
    const { audioContext } = this.data;
    if (audioContext) {
      audioContext.stop();
      console.log('音频播放已停止');
    }
  },

  onUnload() {
    // 页面卸载时销毁音频上下文
    const { audioContext } = this.data;
    if (audioContext) {
      audioContext.destroy();
    }
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})